You can add characters to upperTable and a matching entry in the same position in lowerTable to localize it to handle language specific characters. This script does not handle the special characters with ASCII code > 127, see the script Selection to lower case to see how to modify the script to handle high-ASCII characters.